Due to the increase in computing power of modern computers, the complexity of software (a computer program or simply a program) used on computers has also increased significantly. Most often, modern software contains not only the executable file of the main program, but also a large number of files of auxiliary utilities, data libraries, and resources (such as icons, multimedia data), and so forth.
For proper installation of modern software on users' computers, special installation programs may be used, which provide the fine tuning of the software being installed, the adjustment of its interworking with other programs and underlying operating system, and installation of additional utilities.
Oftentimes in the course of installing the programs needed by the user, additional programs often not needed by the user are also installed on the user's computer (such as an antivirus, even though one has already been installed on the user's computer, or for example a browser supplement tracking the status of email services which the user has never used, and so forth).
Besides useful but unneeded programs, some installer programs may install so-called “unwanted software”, as well as software presenting a potential (riskware) or actual (malware) danger.
It should be noted that, due to the development of computer networks in general and the Internet in particular, certain programs are downloaded from a computer network immediately prior to installation or an individual installer is formulated for each user at the server end. Such installers may include programs that the user has selected on a site distributing computer applications, which once again leads to the above-described problems—many programs not needed by the user are installed on the user's computer, among which there may be potentially dangerous or even harmful ones.
The difficulty of detecting the installation of unwanted software lies in the fact that many installer programs install the above-described programs with the consent of the user. The user is often unaware what he is installing and for what purpose. For example, certain installer programs may present the user with written terms of installation of additional programs such that he often selects an option involving an installation without real need to install them.
In detecting unwanted software, standard methods of dealing with malicious programs may be used, namely, detection with, e.g., the use of signature or heuristic methods and then removal of the unwanted software.
The known technologies for detection are used to detect malicious software, as well as software presenting a potential threat, but are often unable to detect unwanted software installed on a user's computer.
The present invention solves the problem of detecting unwanted software.